namespace ext.grid
{
	using System;
	using System.Runtime.CompilerServices;
	using System.Html;
	using System.Collections;
	
	
	/// <summary>
	/// Abstract base class for grid SelectionModels. It provides the interface that should be
	/// implemented by descendant classes. This class should not be directly instantiated.
	/// </summary>
	/// <definedin>src\widgets\grid\AbstractSelectionModel.js</definedin>
	[ScriptName("AbstractSelectionModel")]
	[ScriptNamespace("Ext.grid")]
	[Imported()]
	public partial class AbstractSelectionModel : ext.util.Observable
	{
		
		#region Constructors
		/// <summary>Constructor</summary>
		public AbstractSelectionModel()
		{
		}
		#endregion
		
		#region Properties
		/// <summary>The GridPanel for which this SelectionModel is handling selection. Read-only.</summary>
		/// <definedin>src\widgets\grid\AbstractSelectionModel.js</definedin>
		[ScriptName("grid")]
		[IntrinsicProperty()]
		public object Grid
		{
			get
			{
				throw new System.Exception("Imported - not implemented");
			}
		}
		#endregion
		
		#region Methods
		/// <summary>Locks the selections.</summary>
		/// <definedin>src\widgets\grid\AbstractSelectionModel.js</definedin>
		[ScriptName("lock")]
		public void Lock()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Unlocks the selections.</summary>
		/// <definedin>src\widgets\grid\AbstractSelectionModel.js</definedin>
		[ScriptName("unlock")]
		public void Unlock()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Returns true if the selections are locked.</summary>
		/// <definedin>src\widgets\grid\AbstractSelectionModel.js</definedin>
		[ScriptName("isLocked")]
		public bool IsLocked()
		{
			throw new System.Exception("Imported - not implemented");
		}
		#endregion
	}
}
